package com.lanou.service.impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.lanou.bean.ProductBean;
import com.lanou.bean.ProductTypeCountBean;
import com.lanou.mapper.CompanyProductMapper;
import com.lanou.service.CompanyProductService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * Created by dllo on 18/3/13.
 */
@Service
public class CompanyProductServiceImpl implements CompanyProductService {

    @Resource
    private CompanyProductMapper companyProductMapper;


    /**
     * 郭中宏
     * @param companyName 公司名称
     * @return 返回改公司产品中 的家装类型和每个类型的数量
     */
    @Override
    public List<ProductTypeCountBean> productHomeTypeCount(String companyName) {
        return companyProductMapper.companyHomeProductInFo(companyName);
    }


    /**
     * 郭中宏
     * @param companyName 公司名称
     * @return 返回改公司产品中 的公装类型和每个类型的数量
     */
    @Override
    public List<ProductTypeCountBean> productCommonalityTypeCount(String companyName) {
        return companyProductMapper.productCommonalityTypeCount(companyName);
    }


    /*
     * 郭中宏
     * @param companyName 公司名称
     * @param pageNo 当前页数
     * @param pageSize 每页显示的数据个数
     * @return 返回该公司的所有产品（一页）
     */
    @Override
    public PageInfo<ProductBean> companyProductList(String companyName,Integer pageNo,Integer pageSize) {
        pageNo=pageSize==null?1:pageNo;
        pageSize=pageSize==null?12:pageSize;
        PageHelper.startPage(pageNo,pageSize);
        List<ProductBean> list=companyProductMapper.companyProductList(companyName);
        PageInfo<ProductBean> pageInfo=new PageInfo<ProductBean>(list);
        return pageInfo;
    }

    /**
     * 郭中宏
     * @param companyName 公司名称
     * @param house 产品类型（如：小户型，一局等等）
     * @param pageNo 当前页数
     * @param pageSize 每页显示多少数据
     * @return 返回对应页数的公司产品数据
     */
    @Override
    public PageInfo<ProductBean> companyPrductTypeList(String companyName, String house, Integer pageNo, Integer pageSize) {
        pageNo=pageSize==null?1:pageNo;
        pageSize=pageSize==null?12:pageSize;
        PageHelper.startPage(pageNo,pageSize);
        List<ProductBean> list=companyProductMapper.companyPrductTypeList(companyName,house);
        PageInfo<ProductBean> pageInfo=new PageInfo<ProductBean>(list);
        return pageInfo;
    }
}
